package com.ruoyi.functiontest.mapper;

import java.util.List;
import com.ruoyi.functiontest.domain.TollAccessStatTest;

/**
 * 联网收费切入数据实测统计测试Mapper接口
 * 
 * @author ruoyi
 * @date 2025-09-25
 */
public interface TollAccessStatTestMapper 
{
    /**
     * 查询联网收费切入数据实测统计测试
     * 
     * @param id 联网收费切入数据实测统计测试主键
     * @return 联网收费切入数据实测统计测试
     */
    public TollAccessStatTest selectTollAccessStatTestById(Long id);

    /**
     * 查询联网收费切入数据实测统计测试列表
     * 
     * @param tollAccessStatTest 联网收费切入数据实测统计测试
     * @return 联网收费切入数据实测统计测试集合
     */
    public List<TollAccessStatTest> selectTollAccessStatTestList(TollAccessStatTest tollAccessStatTest);

    /**
     * 新增联网收费切入数据实测统计测试
     * 
     * @param tollAccessStatTest 联网收费切入数据实测统计测试
     * @return 结果
     */
    public int insertTollAccessStatTest(TollAccessStatTest tollAccessStatTest);

    /**
     * 修改联网收费切入数据实测统计测试
     * 
     * @param tollAccessStatTest 联网收费切入数据实测统计测试
     * @return 结果
     */
    public int updateTollAccessStatTest(TollAccessStatTest tollAccessStatTest);

    /**
     * 删除联网收费切入数据实测统计测试
     * 
     * @param id 联网收费切入数据实测统计测试主键
     * @return 结果
     */
    public int deleteTollAccessStatTestById(Long id);

    /**
     * 批量删除联网收费切入数据实测统计测试
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTollAccessStatTestByIds(Long[] ids);
    
    /**
     * 根据ID查询是否有子节点
     * 
     * @param id 节点ID
     * @return 结果
     */
    public int hasChildById(Long id);

    /**
     * 更新实测单位审核状态为0
     * 
     * @return 更新记录数
     */
    public int updateReview1ToZero();

    /**
     * 检查所有数据的review1字段是否都为0
     * 
     * @return 是否全部为0
     */
    public boolean checkAllReview1IsZero();

    /**
     * 根据条件更新业主审核状态为0
     * 
     * @param tollAccessStatTest 查询条件
     * @return 更新记录数
     */
    public int updateReview2ToZeroByCondition(TollAccessStatTest tollAccessStatTest);

    /**
     * 检查所有数据的review1和review2字段是否都不为空且都为0
     * 
     * @return 是否全部为0
     */
    public boolean checkAllReview1AndReview2AreZero();

    /**
     * 更新中心审核状态为0
     * 
     * @return 更新记录数
     */
    public int updateReview3ToZero();
}
